package com.sunwayworld.basemodule.samplemanage.sample.service;

import com.sunwayworld.basemodule.samplemanage.sample.bean.LimsSampleBean;
import com.sunwayworld.basemodule.samplemanage.sample.bean.LimsSampleDerivativeBean;
import com.sunwayworld.framework.data.page.Page;
import com.sunwayworld.framework.restful.data.RestJsonWrapperBean;
import com.sunwayworld.framework.support.base.service.GenericService;

import java.util.List;

public interface LimsSampleDerivativeService extends GenericService<LimsSampleDerivativeBean, Long> {

    Page<LimsSampleBean> selectDerivativeInRunPagination(Long runId, RestJsonWrapperBean wrapperBean);

    Page<LimsSampleBean> selectDerivativeInTaskPagination(Long taskId, RestJsonWrapperBean wrapperBean);

    void insertDerivative(RestJsonWrapperBean wrapper);

    List<LimsSampleBean> selectDerivativeInRunList(Long runId, RestJsonWrapperBean wrapperBean);

    // 混样任务下发
    Page<LimsSampleDerivativeBean> selectMixTask(RestJsonWrapperBean wrapperBean);

    void insertDerivativesMulti(RestJsonWrapperBean wrapper);
}
